[증강형 코딩] 바이브를 넘어선 증강형 코딩
증강형 코딩 이란?
증강형 코딩(Augmented Coding)은 바이브 코딩(Vibe Coding)을 넘어선 다음 단계의 코딩 방식으로 TDD 권위자 켄트 벡 형님이 제안하신 용어다. 바이브 코딩은 과정을 넘기고 결과를 AI에게 요청하는 코딩 방식이라할 수 있다. 하지만 이런 방식은 코드가 돌아가게는 만들 수 있더라도 보통 불필요한 로직도 많이 들어가고 코드 복잡도도 올라간다.
증강형 코딩은 깔끔한 코드가 완성되는 것을 목표로 한다. 시스템의 행동만 신경쓰는 바이브 코딩과 다르게 증강형 코딩은 코드 품질에도 신경을 쓴다. 그리고 복잡도와 테스트 커버리지도 챙기며 개발자가 주도권을 가지고 AI를 활용하여 더 좋은 결과물에 생산성을 높이는 코딩이다.
켄트 벡은 특별한 B+트리 라이브러리를 만드는데 augmented coding을 활용했다고 한다. 어떻게 활용했는지 알아보자.
1.1 AI의 코딩을 중단시키는 신호 3가지
켄트 벡은 AI를 활용하는데 AI가 잘못되면 적극적으로 개입한다고 한다. 그리고 AI가 잘못하는 신호로 3가지를 소개했다.
AI가 잘못 코딩하는 신호 3가지
Loops
해결할 수 없는 문제 때문에 무한 루프하여 행동하는 경우
Functionality I hadn't asked for (even if it was a reasonable next step)
요청하지 않은 기능을 스스로 구현하기 시작하는 경우
Any indication that the genie was cheating, for example by disabling or deleting tests
문제 해결을 위해 속임수(테스트 제거 또...